package com.ruoyi.system.domain.excle;

import com.ruoyi.common.core.annotation.Excel;

import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;

public class QuestionNumDTO {

    // ========== 基本字段 ==========
    @Excel(name = "身份证号", sort = 1)
    private String idcard;

    @Excel(name = "姓名", sort = 2)
    private String realname;

    @Excel(name = "性别", sort = 3)
    private String sex;

    @Excel(name = "出生日期", sort = 4)
    private String birthdate;

    @Excel(name = "年龄", sort = 5)
    private String age;

    @Excel(name = "城乡工作种类", sort = 6)
    private String towncountry;

    @Excel(name = "所属机构", sort = 7)
    private String mechanismname;

    @Excel(name = "机构代码", sort = 8)
    private String mechanismcode;

    @Excel(name = "问卷创建日期", sort = 9)
    private String createTime;

    private Map<String, String> questionFields = new LinkedHashMap<>();

    // 获取动态字段值的方法（ExcelUtil会通过反射调用）
    public String getQuestionField(String fieldName) {
        return questionFields.get(fieldName);
    }

    // 添加动态字段
    public void addQuestionField(String fieldName, String value) {
        this.questionFields.put(fieldName, value);
    }

    // 获取所有动态字段名
    public Set<String> getQuestionFieldNames() {
        return questionFields.keySet();
    }


    // ========== 个人信息字段 ==========
    @Excel(name = "工作单位", sort = 100)
    private String workunit;

    @Excel(name = "民族", sort = 101)
    private String nation;

    @Excel(name = "职称", sort = 102)
    private String position;

    @Excel(name = "职业", sort = 103)
    private String occupation;

    @Excel(name = "行业", sort = 104)
    private String industry;

    @Excel(name = "文化程度", sort = 105)
    private String culture;

    @Excel(name = "家庭住址", sort = 106)
    private String address;

    @Excel(name = "手机号", sort = 107)
    private String phone;

    public String getIdcard() {
        return idcard;
    }

    public void setIdcard(String idcard) {
        this.idcard = idcard;
    }

    public String getRealname() {
        return realname;
    }

    public void setRealname(String realname) {
        this.realname = realname;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getBirthdate() {
        return birthdate;
    }

    public void setBirthdate(String birthdate) {
        this.birthdate = birthdate;
    }

    public String getAge() {
        return age;
    }

    public void setAge(String age) {
        this.age = age;
    }

    public String getTowncountry() {
        return towncountry;
    }

    public void setTowncountry(String towncountry) {
        this.towncountry = towncountry;
    }

    public String getMechanismname() {
        return mechanismname;
    }

    public void setMechanismname(String mechanismname) {
        this.mechanismname = mechanismname;
    }

    public String getMechanismcode() {
        return mechanismcode;
    }

    public void setMechanismcode(String mechanismcode) {
        this.mechanismcode = mechanismcode;
    }

    public String getCreateTime() {
        return createTime;
    }

    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }
    public String getWorkunit() {
        return workunit;
    }

    public void setWorkunit(String workunit) {
        this.workunit = workunit;
    }

    public String getNation() {
        return nation;
    }

    public void setNation(String nation) {
        this.nation = nation;
    }

    public String getPosition() {
        return position;
    }

    public void setPosition(String position) {
        this.position = position;
    }

    public String getOccupation() {
        return occupation;
    }

    public void setOccupation(String occupation) {
        this.occupation = occupation;
    }

    public String getIndustry() {
        return industry;
    }

    public void setIndustry(String industry) {
        this.industry = industry;
    }

    public String getCulture() {
        return culture;
    }

    public void setCulture(String culture) {
        this.culture = culture;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }
}
